home *** CD-ROM | disk | FTP | other *** search
/ Apple Reference & Presen… 1994 February Supplement / ARPL-Feb-94-Supplement-PowerPC.iso / 3rd Party PowerPC Demo Apps / Aldus FreeHand / Aldus FreeHand 4.0 TV / Aldus FreeHand 4.0 TV.rsrc / Post_1085 < prev    next >
Encoding:
Text File  |  1994-01-25  |  6.3 KB  |  328 lines

  1. %%BeginResource: procset Altsys_header 4 0
  2. userdict begin /AltsysDict 242 dict def end
  3. AltsysDict begin
  4. /bdf{bind def}bind def
  5. /xdf{exch def}bdf
  6. /defed{where{pop true}{false}ifelse}bdf
  7. /ndf{1 index where{pop pop pop}{dup xcheck{bind}if def}ifelse}bdf
  8. /d{setdash}bdf
  9. /h{closepath}bdf
  10. /H{}bdf
  11. /J{setlinecap}bdf
  12. /j{setlinejoin}bdf
  13. /M{setmiterlimit}bdf
  14. /n{newpath}bdf
  15. /N{newpath}bdf
  16. /q{gsave}bdf
  17. /Q{grestore}bdf
  18. /w{setlinewidth}bdf
  19. /sepdef{
  20.  dup where not
  21.  {
  22. AltsysSepDict
  23.  }
  24.  if 
  25.  3 1 roll exch put
  26. }bdf
  27. /st{settransfer}bdf
  28. /colorimage defed /_rci xdf
  29. /_NXLevel2 defed { 
  30.  _NXLevel2 not {   
  31. /colorimage where {
  32. userdict eq {
  33. /_rci false def 
  34. } if
  35. } if
  36.  } if
  37. } if
  38. /md defed{ 
  39.  md type /dicttype eq {  
  40. /colorimage where { 
  41. md eq { 
  42. /_rci false def 
  43. }if
  44. }if
  45. /settransfer where {
  46. md eq {
  47. /st systemdict /settransfer get def
  48. }if
  49. }if
  50.  }if 
  51. }if
  52. /setstrokeadjust defed
  53. {
  54.  true setstrokeadjust
  55.  /C{curveto}bdf
  56.  /L{lineto}bdf
  57.  /m{moveto}bdf
  58. }
  59. {
  60.  /dr{transform .25 sub round .25 add 
  61. exch .25 sub round .25 add exch itransform}bdf
  62.  /C{dr curveto}bdf
  63.  /L{dr lineto}bdf
  64.  /m{dr moveto}bdf
  65.  /setstrokeadjust{pop}bdf 
  66. }ifelse
  67. /rectstroke defed /xt xdf
  68. xt {/yt save def} if
  69. /privrectpath { 
  70.  4 -2 roll m
  71.  dtransform round exch round exch idtransform 
  72.  2 copy 0 lt exch 0 lt xor
  73.  {dup 0 exch rlineto exch 0 rlineto neg 0 exch rlineto}
  74.  {exch dup 0 rlineto exch 0 exch rlineto neg 0 rlineto}
  75.  ifelse
  76.  closepath
  77. }bdf
  78. /rectclip{newpath privrectpath clip newpath}def
  79. /rectfill{gsave newpath privrectpath fill grestore}def
  80. /rectstroke{gsave newpath privrectpath stroke grestore}def
  81. xt {yt restore} if
  82. /packedarray{array astore readonly}ndf
  83. /` 
  84.  false setoverprint  
  85.  
  86.  
  87.  /-save0- save def
  88.  5 index concat
  89.  pop
  90.  storerect left bottom width height rectclip
  91.  pop
  92.  
  93.  userdict begin
  94.  
  95.  /showpage {} def
  96.  
  97.  0 setgray 0 setlinecap 1 setlinewidth
  98.  0 setlinejoin 10 setmiterlimit [] 0 setdash newpath
  99.  
  100.  false setstrokeadjust
  101. } bdf
  102. /currentpacking defed{true setpacking}if
  103. /min{2 copy gt{exch}if pop}bdf
  104. /max{2 copy lt{exch}if pop}bdf
  105. /xformfont { currentfont exch makefont setfont } bdf
  106. /fhnumcolors 1 
  107.  statusdict begin
  108. /processcolors defed 
  109. {
  110. pop processcolors
  111. }
  112. {
  113. /deviceinfo defed {
  114. deviceinfo /Colors known {
  115. pop deviceinfo /Colors get
  116. } if
  117. } if
  118. } ifelse
  119.  end 
  120. def
  121. /printerRes 
  122.  gsave
  123.  matrix defaultmatrix setmatrix
  124.  72 72 dtransform
  125.  abs exch abs
  126.  max
  127.  grestore
  128.  def
  129. /graycalcs
  130. [
  131.  {Angle Frequency}   
  132.  {GrayAngle GrayFrequency} 
  133.  {0 Width Height matrix defaultmatrix idtransform 
  134. dup mul exch dup mul add sqrt 72 exch div} 
  135.  {0 GrayWidth GrayHeight matrix defaultmatrix idtransform 
  136. dup mul exch dup mul add sqrt 72 exch div} 
  137. ] def
  138. /calcgraysteps {
  139.  /currenthalftone defed
  140.  {currenthalftone /dicttype eq}{false}ifelse
  141.  {
  142. currenthalftone begin
  143. HalftoneType 4 le
  144. {graycalcs HalftoneType 1 sub get exec}
  145. {
  146. HalftoneType 5 eq
  147. {
  148. Default begin
  149. {graycalcs HalftoneType 1 sub get exec}
  150. end
  151. }
  152. {0 60} 
  153. ifelse
  154. }
  155. ifelse
  156. end
  157.  }
  158.  {
  159. currentscreen pop exch 
  160.  }
  161.  ifelse
  162.  printerRes 300 max exch div exch 
  163.  2 copy        
  164.  sin mul round dup mul    
  165.  3 1 roll       
  166.  cos mul round dup mul    
  167.  add 1 add       
  168.  dup maxsteps gt {pop maxsteps} if  
  169. } bdf
  170. /nextrelease defed { 
  171.  /languagelevel defed not {    
  172. /framebuffer defed { 
  173. 0 40 string framebuffer 9 1 roll 8 {pop} repeat
  174. dup 516 eq exch 520 eq or
  175. {
  176. /fhnumcolors 3 def
  177. /currentscreen {60 0 {pop pop 1}}bdf
  178. /calcgraysteps {maxsteps} bdf
  179. }if
  180. }if
  181.  }if
  182. }if
  183. fhnumcolors 1 ne {
  184.  /calcgraysteps {maxsteps} bdf
  185. } if
  186. /gradfrequency 144 def
  187. printerRes 1000 lt {
  188.  /gradfrequency 72 def
  189. } if
  190. /adjnumsteps {
  191.  
  192.  dup dtransform abs exch abs max  
  193.  
  194.  printerRes div       
  195.  
  196.  gradfrequency mul      
  197.  round        
  198.  5 max       
  199.  min        
  200. }bdf
  201. /goodsep {
  202.  spots exch get 4 get dup sepname eq exch (_vc_Registration) eq or
  203. }bdf
  204. /BeginGradation defed
  205. {/bb{BeginGradation}bdf}
  206. {/bb{}bdf}
  207. ifelse
  208. /EndGradation defed
  209. {/eb{EndGradation}bdf}
  210. {/eb{}bdf}
  211. ifelse
  212. /bottom -0 def 
  213. /delta -0 def 
  214. /frac -0 def 
  215. /height -0 def 
  216. /left -0 def 
  217. /numsteps1 -0 def 
  218. /radius -0 def 
  219. /right -0 def 
  220. /top -0 def 
  221. /width -0 def 
  222. /xt -0 def 
  223. /yt -0 def 
  224. /df currentflat def 
  225. /tempstr 1 string def 
  226. /clipflatness currentflat 1 add def 
  227. /inverted? 
  228.  0 currenttransfer exec .5 ge def
  229. /tc1 [0 0 0 1] def 
  230. /tc2 [0 0 0 1] def 
  231. /storerect{/top xdf /right xdf /bottom xdf /left xdf 
  232. /width right left sub def /height top bottom sub def}bdf
  233. /concatprocs{
  234.  systemdict /packedarray known 
  235.  {dup type /packedarraytype eq 2 index type /packedarraytype eq or}{false}ifelse
  236.  { 
  237. /proc2 exch cvlit def /proc1 exch cvlit def
  238. proc1 aload pop proc2 aload pop
  239. proc1 length proc2 length add packedarray cvx
  240.  }
  241.  { 
  242. /proc2 exch cvlit def /proc1 exch cvlit def
  243. /newproc proc1 length proc2 length add array def
  244. newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval
  245. newproc cvx
  246.  }ifelse
  247. }bdf
  248. /i{dup 0 eq
  249.  {pop df dup} 
  250.  {dup} ifelse 
  251.  1 add   
  252.  /clipflatness xdf setflat
  253. }bdf
  254. version cvr 38.0 le
  255. {/setrgbcolor{
  256. currenttransfer exec 3 1 roll
  257. currenttransfer exec 3 1 roll
  258. currenttransfer exec 3 1 roll
  259. setrgbcolor}bdf}if
  260. /vms {/vmsv save def} bdf
  261. /vmr {vmsv restore} bdf
  262. /vmrs{vmsv restore /vmsv save def}bdf
  263. /eomode{ 
  264.  {/filler /eofill load def /clipper /eoclip load def}
  265.  {/filler /fill load def /clipper /clip load def}
  266.  ifelse
  267. }bdf
  268. /normtaper{}bdf
  269. /logtaper{9 mul 1 add log}bdf
  270. /CD{
  271.  /NF exch def 
  272.  {    
  273. exch dup 
  274. /FID ne 1 index/UniqueID ne and
  275. {exch NF 3 1 roll put}
  276. {pop pop}
  277. ifelse
  278.  }forall 
  279.  NF
  280. }bdf
  281. /MN{
  282.  1 index length   
  283.  /Len exch def 
  284.  dup length Len add  
  285.  string dup    
  286.  Len     
  287.  4 -1 roll    
  288.  putinterval   
  289.  dup     
  290.  0      
  291.  4 -1 roll   
  292.  putinterval   
  293. }bdf
  294. /RC{4 -1 roll /ourvec xdf 256 string cvs(|______)anchorsearch
  295.  {1 index MN cvn/NewN exch def cvn
  296.  findfont dup maxlength dict CD dup/FontName NewN put dup
  297.  /Encoding ourvec put NewN exch definefont pop}{pop}ifelse}bdf
  298. /RF{ 
  299.  dup      
  300.  FontDirectory exch   
  301.  known     
  302.  {pop 3 -1 roll pop}  
  303.  {RC}
  304.  ifelse
  305. }bdf
  306. /FF{dup 256 string cvs(|______)exch MN cvn dup FontDirectory exch known
  307.  {exch pop findfont 3 -1 roll pop}
  308.  {pop dup findfont dup maxlength dict CD dup dup
  309.  /Encoding exch /Encoding get 256 array copy 7 -1 roll 
  310.  {3 -1 roll dup 4 -2 roll put}forall put definefont}
  311.  ifelse}bdf
  312. /fps{
  313.  currentflat   
  314.  exch     
  315.  dup 0 le{pop 1}if 
  316.  {
  317. dup setflat 3 index stopped
  318. {1.3 mul dup 3 index gt{pop setflat pop pop stop}if} 
  319. {exit} 
  320. ifelse
  321.  }loop 
  322.  pop setflat pop pop
  323. }bdf
  324. /fp{100 currentflat fps}bdf
  325. /clipper{clip}bdf 
  326. /W{/clipper load 100 clipflatness dup setflat fps}bdf